package com.link_with_health.service;

import com.link_with_health.exception.BaseException;
import com.link_with_health.model.AdminLogEntity;
import java.util.List;

public interface AdminLogService {
    /**
     * 通过日志id获取管理员操作日志记录
     * @param id 日志id
     * @return 操作日志记录
     */
    AdminLogEntity getAdminLogById(Long id) throws BaseException;

    /**
     * 通过日志类型获取操作日志
     * @param type 类型
     * @return 操作日志记录
     */
    List<AdminLogEntity> getAdminLogByType(String type) throws BaseException;

    /**
     * 通过操作者获取操作日志
     * @param operator 操作者id
     * @return
     */
    List<AdminLogEntity> getAdminLogByOperator(Integer operator) throws BaseException;
    /**
     * 获取所有操作日志信息
     * @return 所有操作日志信息
     */
    List<AdminLogEntity> getAllAdminLog() throws BaseException;

    /**
     * 添加新的操作日志
     * @param log 日志
     * @return 修改数量
     */
    int addAdminLog(AdminLogEntity log) throws BaseException;

    /**
     * 修改日志
     * @param log 日志
     * @return 修改数量
     */
    int changeAdminLog(AdminLogEntity log) throws BaseException;

    /**
     * 删除日志
     * @param id 日志id
     * @return 删除数量
     */
    int deleteAdminLog(Long id) throws BaseException;
}
